﻿using System;
using System.Collections.Generic;
using System.Linq;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Audio;
using Microsoft.Xna.Framework.Content;
using Microsoft.Xna.Framework.GamerServices;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Input;
using Microsoft.Xna.Framework.Media;

namespace Toto
{
    class Eixo
    {
        Texture2D imagem;
        Vector2 posicao;
        GameWindow gameWindow;
        Campo campo;
        List<Jogador> bonecos;
        bool cima;


        public Eixo(Texture2D imagem, Vector2 posicao, GameWindow gameWindow, Campo campo,int numeroDeBonecos, Texture2D texturaJogador)
        {
            this.imagem = imagem;
            this.posicao = posicao;
            this.gameWindow = gameWindow;
            this.campo = campo;
            int espacamento = (int) (imagem.Height-(numeroDeBonecos*texturaJogador.Height))/(numeroDeBonecos+1);
            bonecos = new List<Jogador>();

            for (int i = 0; i < numeroDeBonecos; i++)
                bonecos.Add(new Jogador(texturaJogador,new Vector2(posicao.X + imagem.Width/2 - texturaJogador.Width/2,espacamento*(i+1)+texturaJogador.Height*i)));
        }

        public Vector2 Position
        {
            get { return this.posicao; }
            set { this.posicao = value; }
        }

        public void Update(List<Keys> comando)
        {
            foreach(Keys tecla in comando)
            {
                    if (Keyboard.GetState().IsKeyDown(Keys.Up) && tecla == Keys.Up)
                    {
                        foreach (Jogador boneco in bonecos)
                        {
                            boneco.Posicao -= new Vector2(0, 10);
                        }
                    }

                    if (Keyboard.GetState().IsKeyDown(Keys.Down) && tecla == Keys.Down)
                    {
                        foreach (Jogador boneco in bonecos)
                        {
                            boneco.Posicao += new Vector2(0, 10);
                        }
                    } 
            }
  

        }

    


        public void Draw(SpriteBatch spriteBatch, GameTime gameTime)
        {
            spriteBatch.Draw(imagem, posicao, Color.White);
            foreach (Jogador boneco in bonecos)
            {
                boneco.Draw(spriteBatch);
            }
        }

    }


}
